﻿using Domain.Entity;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Metadata.Builders;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace EFCore.Configers
{
    public class ERConfigers : IEntityTypeConfiguration<ER>
    {
        public void Configure(EntityTypeBuilder<ER> builder)
        {
            builder.ToTable(nameof(ER));

            builder.Property(e => e.HumanName).HasMaxLength(60).IsRequired(false);
            builder.Property(e => e.EngageType).HasMaxLength(30).IsRequired(false);
            builder.Property(e => e.HumanAddress).HasMaxLength(200).IsRequired(false);
            builder.Property(e => e.HumanPostcode).HasMaxLength(10).IsRequired(false);
            builder.Property(e => e.HumanMajorKindId).HasMaxLength(2).IsRequired(false);
            builder.Property(e => e.HumanMajorKindName).HasMaxLength(60).IsRequired(false);
            builder.Property(e => e.HumanMajorId).HasMaxLength(2).IsRequired(false);
            builder.Property(e => e.HunmaMajorName).HasMaxLength(60).IsRequired(false);
            builder.Property(e => e.HumanTelephone).HasMaxLength(60).IsRequired(false);
            builder.Property(e => e.HumanHomephone).HasMaxLength(60).IsRequired(false);
            builder.Property(e => e.HumanMobilephone).HasMaxLength(60).IsRequired(false);
            builder.Property(e => e.HumanEmail).HasMaxLength(60).IsRequired(false);
            builder.Property(e => e.HumanHobby).HasMaxLength(200).IsRequired(false);
            builder.Property(e => e.HumanSpeciality).HasMaxLength(200).IsRequired(false);
            builder.Property(e => e.HumanSex).HasMaxLength(2).IsRequired(false);
            builder.Property(e => e.HumanReligion).HasMaxLength(60).IsRequired(false);
            builder.Property(e => e.HumanParty).HasMaxLength(60).IsRequired(false);
            builder.Property(e => e.HumanNationality).HasMaxLength(60).IsRequired(false);
            builder.Property(e => e.HumanRace).HasMaxLength(60).IsRequired(false);
            builder.Property(e => e.HumanBirthday).IsRequired(false);
            builder.Property(e => e.HumanAge).IsRequired(false);
            builder.Property(e => e.HumanEducatedDegree).HasMaxLength(60).IsRequired(false);
            builder.Property(e => e.HumanEducatedYears).IsRequired(false);
            builder.Property(e => e.HumanEducatedMajor).HasMaxLength(60).IsRequired(false);
            builder.Property(e => e.HumanCollege).HasMaxLength(60).IsRequired(false);
            builder.Property(e => e.HumanIdcard).HasMaxLength(60).IsRequired(false);
            builder.Property(e => e.HumanBirthplace).HasMaxLength(200).IsRequired(false);
            builder.Property(e => e.DemandSalaryStandard).IsRequired(false);
            builder.Property(e => e.HumanHistoryRecords).HasMaxLength(200).IsRequired(false);
            builder.Property(e => e.Remark).HasMaxLength(200).IsRequired(false);
            builder.Property(e => e.Recomandation).HasMaxLength(200).IsRequired(false);
            builder.Property(e => e.HumanPicture).HasMaxLength(60).IsRequired(false);
            builder.Property(e => e.AttachmentName).HasMaxLength(60).IsRequired(false);
            builder.Property(e => e.CheckStatus).IsRequired(false);
            builder.Property(e => e.Register).HasMaxLength(60).IsRequired(false);
            builder.Property(e => e.RegistTime).IsRequired(false);
            builder.Property(e => e.Checker).HasMaxLength(60).IsRequired(false);
            builder.Property(e => e.CheckTime).IsRequired(false);
            builder.Property(e => e.InterviewStatus).IsRequired(false);
            builder.Property(e => e.TotalPoints).IsRequired(false);
            builder.Property(e => e.TestAmount).IsRequired(false);
            builder.Property(e => e.TestChecker).HasMaxLength(60).IsRequired(false);
            builder.Property(e => e.TestCheckTime).IsRequired(false);
            builder.Property(e => e.PassRegister).HasMaxLength(60).IsRequired(false);
            builder.Property(e => e.PassRegistTime).IsRequired(false);
            builder.Property(e => e.PassChecker).HasMaxLength(60).IsRequired(false);
            builder.Property(e => e.PassCheckTime).IsRequired(false);
            builder.Property(e => e.PassCheckStatus).IsRequired(false);
            builder.Property(e => e.PassCheckComment).HasMaxLength(60).IsRequired(false);
            builder.Property(e => e.PassPassComment).HasMaxLength(60).IsRequired(false);

        }
    }
}
